using System;
using System.Collections.Generic;
using System.Text;

namespace Zsa.Emulation.Render
{

    //public enum DeviceState
    //{
    //    Ready = 1,
    //    Active = 2,
    //    Disabled = 3
    //}

    /// <summary>
    /// The render device type.
    /// </summary>
    public enum RenderDeviceType
    {
        Unknown = 0,
        Video = 1,
        Audio = 2,
        Input = 4,
        Debug = 8,
        Network = 16
    }

    public enum MachineHostEventType
    {
        SurfaceChanged,
        Active,
        InActive,
        Shutdown,
    }



    public enum MachineHostFlags
    {
        /// <summary>
        /// Default.
        /// </summary>
        Default = 0,
        /// <summary>
        /// Alway render even if the machine is not active.
        /// </summary>
        AlwaysOn = 1
    }

    [Flags()]
    public enum MachineHostState : byte
    {
        /// <summary>
        /// The state of the device is unknown.
        /// </summary>
        Unknown = 0,
        /// <summary>
        /// The device was never started.
        /// </summary>
        NeverStarted,
        /// <summary>
        /// The device is on.
        /// </summary>
        Off,
        /// <summary>
        /// The device if off.
        /// </summary>
        On,
        /// <summary>
        /// The device is paused
        /// </summary>
        Paused,
        /// <summary>
        /// The change to the devices state is pending.
        /// </summary>
        PendingFlag = 128

    }


}
